import { Loading } from 'element-ui';
import { Notification } from 'element-ui';

/**
 * 创建loading
 * @param {*} text 描述文本
 * @param {Element} 目标节点
 * @param {*} options 按钮配置
 * @
 * @returns 返回loading实例
 */
export function createLoading(text, target, options = {}) {
	return Loading.service({
		lock: true,
		text,
		target: target || document.body,
		fullscreen: true,
		background: 'rgba(244,255,255,0.5)',
		...options
	});
}

/**
 * 创建提示框
 * @param {*} text 内容
 * @param {*} options 配置，与element-ui官网的Notification配置一致
 * @returns 
 */
export function createMessage(text, options = { type: 'warning' }) {
	return Notification({
		title: '提示',
		message: text,
		...options
	});
}

/**
 * 根据第二个字符串截取返回第一个字符串剩余的值
 * @param {*} str1 例如：/system/menu
 * @param {*} str2 例如：/system
 * @returns 结果返回: menu
 */
export function getReplaceStr(str1, str2) {
	if (str1 && str2) {
		const res = str1.replace(str2, '');
		return /^[a-zA-Z]/.test(res) ? res : res.substr(1);
	}
	if (!str1) return '';
	return /^[a-zA-Z]/.test(str1) ? str1 : str1.substr(1);
}

/**
 * 合并字符串
 * @param {*} str1 子级字符串
 * @param {*} str2 父级字符串
 * @param {*} splicer 分隔符
 * @returns
 */
export function mergeStr(str1, str2, splicer = '/') {
	if (str1 && str2) {
		return str2 + splicer + str1;
	}
  return str1 || str2 || '';
}
